home *** CD-ROM | disk | FTP | other *** search
/ Mac-Source 1994 July / Mac-Source_July_1994.iso / C and C++ / Libraries / usr (gcc 1.37 libs) / mac / console.s < prev    next >
Text File  |  1993-12-13  |  17KB  |  1,103 lines

  1. # Compiled by MPW GCC 1.37.1r14
  2.     .data
  3. _LC#0:
  4.     .byte $0
  5.     .byte $0
  6.     .text
  7.     .even
  8.     .globl _SetUpWindows
  9. _SetUpWindows:
  10.     link a6,#-124
  11.     moveml d3/a2,sp@-
  12.     movel a6,d3
  13.     addl #-124,d3
  14.     movel d3,sp@-
  15.     .word  43119  ;  OpenPort
  16.     movel d3,sp@-
  17.     .word  43123  ;  SetPort
  18.     movew #4,sp@-
  19.     .word  43143  ;  TextFont
  20.     movew #9,sp@-
  21.     .word  43146  ;  TextSize
  22.     pea a6@(-16)
  23.     .word  43147  ;  GetFontInfo
  24.     movel d3,sp@-
  25.     .word  43133  ;  ClosePort
  26.     clrw a6@(-6)
  27.     movew #32,a6@(-8)
  28.     movew a6@(-12),d0
  29.     mulsw #82,d0
  30.     addw a6@(-6),d0
  31.     addw #15,d0
  32.     movew d0,a6@(-2)
  33.     movew a6@(-16),a0
  34.     addw a6@(-14),a0
  35.     addw a6@(-10),a0
  36.     movel a0,d0
  37.     moveql #25,d1
  38.     moveml a0/a1,sp@-
  39.     movel d1,sp@-
  40.     movel d2,sp@-
  41.     jsr ULMULT
  42.     movel sp@+,d2
  43.     movel sp@+,d1
  44.     moveml sp@+,a0/a1
  45.     addw a6@(-8),d0
  46.     addw #15,d0
  47.     movew d0,a6@(-4)
  48.     pea a6@(-8)
  49.     movew _qd+92,a0
  50.     subw a6@(-2),a0
  51.     movel a0,d0
  52.     bge _L#2
  53.     addql #1,d0
  54. _L#2:
  55.     asrl #1,d0
  56.     movew d0,sp@-
  57.     movew _qd+90,a0
  58.     subw a6@(-4),a0
  59.     movel a0,d0
  60.     bge _L#3
  61.     addql #1,d0
  62. _L#3:
  63.     asrl #1,d0
  64.     movew d0,sp@-
  65.     .word  43176  ;  OffsetRect
  66.     subql #4,sp
  67.     pea _crt_wRecord
  68.     movel a6,d3
  69.     subql #8,d3
  70.     movel d3,sp@-
  71.     movel a6@(8),sp@-
  72.     moveb #1,sp@-
  73.     clrw sp@-
  74.     movel #-1,sp@-
  75.     moveb #1,sp@-
  76.     clrl sp@-
  77.     .word  43283  ;  NewWindow
  78.     movel sp@,d0
  79.     movel d0,_crt_myWindow
  80.     movel d0,sp@-
  81.     .word  43123  ;  SetPort
  82.     movew #4,sp@-
  83.     .word  43143  ;  TextFont
  84.     movew #9,sp@-
  85.     .word  43146  ;  TextSize
  86.     lea _qd+202,a2
  87.     movel a2@,a0
  88.     movel a0@(16),a6@(-8)
  89.     movel a0@(20),a6@(-4)
  90.     movew a6@(-2),d1
  91.     addw #65521,d1
  92.     movew d1,a6@(-6)
  93.     addqw #1,a6@(-2)
  94.     addw #65522,a6@(-4)
  95.     addw #65535,a6@(-8)
  96.     subql #4,sp
  97.     movel _crt_myWindow,sp@-
  98.     movel d3,sp@-
  99.     pea _LC#0
  100.     moveb #1,sp@-
  101.     clrw sp@-
  102.     clrw sp@-
  103.     clrw sp@-
  104.     movew #16,sp@-
  105.     clrl sp@-
  106.     .word  43348  ;  NewControl
  107.     movel sp@,d0
  108.     movel d0,_vScroll
  109.     movel a2@,a0
  110.     movel a0@(16),a6@(-8)
  111.     movel a0@(20),a6@(-4)
  112.     addw #65521,a6@(-2)
  113.     addw #65521,a6@(-4)
  114.     movel d3,sp@-
  115.     movew #4,sp@-
  116.     movew #4,sp@-
  117.     .word  43177  ;  InsetRect
  118.     subql #4,sp
  119.     movel d3,sp@-
  120.     movel d3,sp@-
  121.     .word  43070  ;  TEStylNew
  122.     movel sp@,d0
  123.     movel d0,a0
  124.     movel a0,_crt_TEH
  125.     movel a0@,a1
  126.     movel a2@,a2
  127.     movel a2@(16),a1@(8)
  128.     movel a2@(20),a1@(12)
  129.     movel a0@,a1
  130.     addw #65521,a1@(14)
  131.     movel a0@,a1
  132.     addw #65521,a1@(12)
  133.     movel a0@,d1
  134.     addql #8,d1
  135.     movel d1,sp@-
  136.     movew #4,sp@-
  137.     movew #4,sp@-
  138.     .word  43177  ;  InsetRect
  139.     movel _crt_TEH,a0
  140.     movel a0@,a1
  141.     movew a1@(12),a2
  142.     subw a1@(8),a2
  143.     movew a1@(24),d0
  144.     extl d0
  145.     movel a2,d1
  146.     moveml a0/a1,sp@-
  147.     movel d2,sp@-
  148.     movel d0,sp@-
  149.     movel d1,d0
  150.     movel sp@,d1
  151.     jsr SLDIVT
  152.     movel d0,d1
  153.     movel sp@+,d0
  154.     movel sp@+,d2
  155.     moveml sp@+,a0/a1
  156.     movel d1,_linesInFolder
  157.     movel a0@,a1
  158.     movew a1@(24),d0
  159.     extl d0
  160.     moveml a0/a1,sp@-
  161.     movel d1,sp@-
  162.     movel d2,sp@-
  163.     jsr ULMULT
  164.     movel sp@+,d2
  165.     movel sp@+,d1
  166.     moveml sp@+,a0/a1
  167.     addw a1@(8),d0
  168.     movew d0,a1@(12)
  169.     movel a0@,a1
  170.     movew a1@(14),a1@(6)
  171.     movel a0,sp@-
  172.     .word  43472  ;  TECalText
  173.     moveml a6@(-132),d3/a2
  174.     unlk a6
  175.     rts
  176.     .byte $8c
  177.     .ascii "SetUpWindows"
  178.     .byte $0
  179.     .word 0
  180.     .even
  181.     .globl _AdjustText
  182. _AdjustText:
  183.     link a6,#0
  184.     movel a2,sp@-
  185.     movel _crt_TEH,a0
  186.     movel a0@,a0
  187.     movew a0@(8),a2
  188.     subw a0@,a2
  189.     subql #2,sp
  190.     movel _vScroll,sp@-
  191.     .word  43360  ;  GetCtlValue
  192.     movew sp@,d0
  193.     movew d0,d0
  194.     movel _crt_TEH,a1
  195.     movel a1@,a0
  196.     mulsw a0@(24),d0
  197.     subl a2,d0
  198.     negl d0
  199.     addqw #2,sp
  200.     beq _L#5
  201.     clrw sp@-
  202.     movew d0,sp@-
  203.     movel a1,sp@-
  204.     .word  43485  ;  TEScroll
  205.     movel a6@(-4),a2
  206.     unlk a6
  207.     rts
  208.     .byte $8a
  209.     .ascii "AdjustText"
  210.     .byte $0
  211.     .word 0
  212.     .data
  213.     .even
  214. _LC#1:
  215.     .word 0
  216.     .word 0
  217.     .word 1024
  218.     .word 1024
  219.     .text
  220.     .even
  221.     .globl _DoMouseDown
  222. _DoMouseDown:
  223.     link a6,#-36
  224.     moveml d3/d4/a2/a3/a4,sp@-
  225.     movel a6@(8),d0
  226.     movel a6@(12),a3
  227.     movel a6@(16),a2
  228.     cmpl #3,d0
  229.     beq _L#24
  230.     bgt _L#35
  231.     cmpl #1,d0
  232.     beq _L#14
  233.     cmpl #2,d0
  234.     beq _L#15
  235.     bra _L#6
  236. _L#35:
  237.     cmpl #5,d0
  238.     beq _L#18
  239.     bgt _L#36
  240.     cmpl #4,d0
  241.     beq _L#16
  242.     bra _L#6
  243. _L#36:
  244.     cmpl #6,d0
  245.     bne _L#6
  246.     beq _L#6
  247.     cmpl _crt_myWindow,a3
  248.     bne _L#9
  249.     subql #2,sp
  250.     movel _crt_myWindow,sp@-
  251.     movel a2@(10),sp@-
  252.     .word  43294  ;  TrackGoAway
  253.     moveb sp@,d0
  254.     addqw #2,sp
  255.     beq _L#6
  256.     movel _crt_myWindow,sp@-
  257.     .word  43286  ;  HideWindow
  258.     clrl sp@-
  259.     movel _crt_TEH,a0
  260.     movel a0@,a1
  261.     movew a1@(60),a4
  262.     movel a4,sp@-
  263.     movel a0,sp@-
  264.     .word  43473  ;  TESetSelect
  265.     movel _crt_TEH,sp@-
  266.     .word  43479  ;  TEDelete
  267.     movel _crt_TEH,a0
  268.     movel a0@,a1
  269.     movew a1@(94),a2
  270.     subl _linesInFolder,a2
  271.     tstw a1@(60)
  272.     ble _L#11
  273.     movel a1@(62),a0
  274.     movew a1@(60),a1
  275.     movel a0@,a0
  276.     moveb a0@(-1,a1:l),d1
  277.     cmpb #10,d1
  278.     bne _L#11
  279.     addqw #1,a2
  280. _L#11:
  281.     movel _vScroll,sp@-
  282.     cmpw #0,a2
  283.     ble _L#12
  284.     movew a2,d0
  285.     bra _L#13
  286. _L#12:
  287.     clrw d0
  288. _L#13:
  289.     movew d0,sp@-
  290.     .word  43365  ;  SetCtlMax
  291.     bra _L#6
  292. _L#14:
  293.     subql #4,sp
  294.     movel a2@(10),sp@-
  295.     .word  43325  ;  MenuSelect
  296.     movel sp@,d0
  297.     movel d0,sp@-
  298.     jsr _DoCommand
  299.     bra _L#6
  300. _L#15:
  301.     movel a2,sp@-
  302.     movel a3,sp@-
  303.     .word  43443  ;  SystemClick
  304.     bra _L#6
  305. _L#16:
  306.     tstl _crt_myWindow
  307.     beq _L#6
  308.     cmpl _crt_myWindow,a3
  309.     bne _L#6
  310.     lea _LC#1,a0
  311.     movel a0@+,a6@(-8)
  312.     movel a0@,a6@(-4)
  313.     movel a3,sp@-
  314.     movel a2@(10),sp@-
  315.     pea a6@(-8)
  316.     .word  43301  ;  DragWindow
  317.     bra _L#6
  318. _L#18:
  319.     tstl _crt_myWindow
  320.     beq _L#6
  321.     cmpl _crt_myWindow,a3
  322.     bne _L#6
  323.     movel a2@(10),d3
  324.     pea a6@(-28)
  325.     .word  43124  ;  GetPort
  326.     movel a3,sp@-
  327.     .word  43123  ;  SetPort
  328.     movel a3@(16),a6@(-16)
  329.     movel a3@(20),a6@(-12)
  330.     movew a6@(-12),d1
  331.     addw #65520,d1
  332.     movew d1,a6@(-16)
  333.     movel a6,d4
  334.     addl #-24,d4
  335.     movel d4,sp@-
  336.     movew #80,sp@-
  337.     movew #80,sp@-
  338.     lea _qd+92,a0
  339.     movew a0@,sp@-
  340.     movew a0@(-2),sp@-
  341.     .word  43175  ;  SetRect
  342.     subql #4,sp
  343.     movel a3,sp@-
  344.     movel d3,sp@-
  345.     movel d4,sp@-
  346.     .word  43307  ;  GrowWindow
  347.     movel sp@,d0
  348.     movel d0,d3
  349.     addqw #4,sp
  350.     beq _L#6
  351.     movel a3,sp@-
  352.     subql #2,sp
  353.     movel d3,sp@-
  354.     .word  43115  ;  LoWord
  355.     movew sp@,d0
  356.     addqw #2,sp
  357.     movew d0,sp@-
  358.     subql #2,sp
  359.     movel d3,sp@-
  360.     .word  43114  ;  HiWord
  361.     movew sp@,d0
  362.     addqw #2,sp
  363.     movew d0,sp@-
  364.     clrb sp@-
  365.     .word  43293  ;  SizeWindow
  366.     pea a3@(16)
  367.     .word  43304  ;  InvalRect
  368.     movel _crt_TEH,a0
  369.     movel a0@,a1
  370.     movel a3@(16),a1@(8)
  371.     movel a3@(20),a1@(12)
  372.     movel a0@,a1
  373.     addw #65521,a1@(14)
  374.     movel a0@,a1
  375.     addw #65521,a1@(12)
  376.     movel a0@,d1
  377.     addql #8,d1
  378.     movel d1,sp@-
  379.     movew #4,sp@-
  380.     movew #4,sp@-
  381.     .word  43177  ;  InsetRect
  382.     movel _crt_TEH,a0
  383.     movel a0@,a1
  384.     movew a1@(12),a2
  385.     subw a1@(8),a2
  386.     movew a1@(24),d0
  387.     extl d0
  388.     movel a2,d1
  389.     moveml a0/a1,sp@-
  390.     movel d2,sp@-
  391.     movel d0,sp@-
  392.     movel d1,d0
  393.     movel sp@,d1
  394.     jsr SLDIVT
  395.     movel d0,d1
  396.     movel sp@+,d0
  397.     movel sp@+,d2
  398.     moveml sp@+,a0/a1
  399.     movel d1,_linesInFolder
  400.     movel a0@,a1
  401.     movew a1@(24),d0
  402.     extl d0
  403.     moveml a0/a1,sp@-
  404.     movel d1,sp@-
  405.     movel d2,sp@-
  406.     jsr ULMULT
  407.     movel sp@+,d2
  408.     movel sp@+,d1
  409.     moveml sp@+,a0/a1
  410.     addw a1@(8),d0
  411.     movew d0,a1@(12)
  412.     movel a0@,a1
  413.     movew a1@(14),a1@(6)
  414.     movel a0,sp@-
  415.     .word  43472  ;  TECalText
  416.     pea a6@(-16)
  417.     .word  43171  ;  EraseRect
  418.     movel _vScroll,sp@-
  419.     movew a3@(22),d1
  420.     addw #65521,d1
  421.     movew d1,sp@-
  422.     movew a3@(16),d1
  423.     addw #65535,d1
  424.     movew d1,sp@-
  425.     .word  43353  ;  MoveControl
  426.     movel _vScroll,sp@-
  427.     movew #16,sp@-
  428.     movew a3@(20),d0
  429.     subw a3@(16),d0
  430.     addw #65523,d0
  431.     movew d0,sp@-
  432.     .word  43356  ;  SizeControl
  433.     movel _vScroll,a0
  434.     movel a0@,a0
  435.     movel a0@(8),a6@(-24)
  436.     movel a0@(12),a6@(-20)
  437.     movel d4,sp@-
  438.     .word  43306  ;  ValidRect
  439.     movel _crt_TEH,a0
  440.     movel a0@,a1
  441.     movew a1@(94),a2
  442.     subl _linesInFolder,a2
  443.     tstw a1@(60)
  444.     ble _L#21
  445.     movel a1@(62),a0
  446.     movew a1@(60),a1
  447.     movel a0@,a0
  448.     moveb a0@(-1,a1:l),d1
  449.     cmpb #10,d1
  450.     bne _L#21
  451.     addqw #1,a2
  452. _L#21:
  453.     movel _vScroll,sp@-
  454.     cmpw #0,a2
  455.     ble _L#22
  456.     movew a2,d0
  457.     bra _L#23
  458. _L#22:
  459.     clrw d0
  460. _L#23:
  461.     movew d0,sp@-
  462.     .word  43365  ;  SetCtlMax
  463.     jsr _AdjustText
  464.     movel a6@(-28),sp@-
  465.     bra _L#37
  466. _L#24:
  467.     subql #4,sp
  468.     .word  43300  ;  FrontWindow
  469.     movel sp@,d0
  470.     addqw #4,sp
  471.     cmpl a3,d0
  472.     beq _L#25
  473.     movel a3,sp@-
  474.     .word  43295  ;  SelectWindow
  475.     bra _L#6
  476. _L#25:
  477.     tstl _crt_myWindow
  478.     beq _L#6
  479.     cmpl _crt_myWindow,a3
  480.     bne _L#6
  481.     pea a6@(-32)
  482.     .word  43124  ;  GetPort
  483.     movel a3,sp@-
  484.     .word  43123  ;  SetPort
  485.     pea a2@(10)
  486.     .word  43121  ;  GlobalToLocal
  487.     subql #2,sp
  488.     movel a2@(10),sp@-
  489.     movel a3,sp@-
  490.     pea a6@(-36)
  491.     .word  43372  ;  FindControl
  492.     movew sp@,d0
  493.     movew d0,a0
  494.     addqw #2,sp
  495.     cmpw #0,a0
  496.     bne _L#28
  497.     subql #2,sp
  498.     movel a2@(10),sp@-
  499.     movel _crt_TEH,a0
  500.     movel a0@,d1
  501.     addql #8,d1
  502.     movel d1,sp@-
  503.     .word  43181  ;  PtInRect
  504.     moveb sp@,d0
  505.     addqw #2,sp
  506.     beq _L#30
  507.     movel a2@(10),sp@-
  508.     btst #1,a2@(14)
  509.     sne d0
  510.     andb #1,d0
  511.     moveb d0,sp@-
  512.     movel _crt_TEH,sp@-
  513.     .word  43476  ;  TEClick
  514.     bra _L#30
  515. _L#28:
  516.     cmpl #129,a0
  517.     bne _L#31
  518.     subql #2,sp
  519.     movel a6@(-36),sp@-
  520.     movel a2@(10),sp@-
  521.     clrl sp@-
  522.     .word  43368  ;  TrackControl
  523.     jsr _AdjustText
  524.     bra _L#38
  525. _L#31:
  526.     subql #2,sp
  527.     movel a6@(-36),sp@-
  528.     movel a2@(10),sp@-
  529.     clrl sp@-
  530.     .word  43368  ;  TrackControl
  531. _L#38:
  532.     addqw #2,sp
  533. _L#30:
  534.     movel a6@(-32),sp@-
  535. _L#37:
  536.     .word  43123  ;  SetPort
  537. _L#6:
  538.     moveml a6@(-56),d3/d4/a2/a3/a4
  539.     unlk a6
  540.     rts
  541.     .byte $8b
  542.     .ascii "DoMouseDown"
  543.     .word 0
  544.     .even
  545.     .globl _ShowSelect
  546. _ShowSelect:
  547.     link a6,#0
  548.     movel a2,sp@-
  549.     movel _crt_TEH,a0
  550.     movel a0@,a1
  551.     movew a1@(94),a2
  552.     subl _linesInFolder,a2
  553.     tstw a1@(60)
  554.     ble _L#40
  555.     movel a1@(62),a0
  556.     movew a1@(60),a1
  557.     movel a0@,a0
  558.     moveb a0@(-1,a1:l),d2
  559.     cmpb #10,d2
  560.     bne _L#40
  561.     addqw #1,a2
  562. _L#40:
  563.     movel _vScroll,sp@-
  564.     cmpw #0,a2
  565.     ble _L#41
  566.     movew a2,d0
  567.     bra _L#42
  568. _L#41:
  569.     clrw d0
  570. _L#42:
  571.     movew d0,sp@-
  572.     .word  43365  ;  SetCtlMax
  573.     jsr _AdjustText
  574.     subql #2,sp
  575.     movel _vScroll,sp@-
  576.     .word  43360  ;  GetCtlValue
  577.     movew sp@,d0
  578.     extl d0
  579.     movel d0,d1
  580.     addl _linesInFolder,d1
  581.     movel _crt_TEH,a0
  582.     movel a0@,a0
  583.     asll #1,d0
  584.     addqw #2,sp
  585.     movew a0@(96,d0:l),d2
  586.     cmpw a0@(32),d2
  587.     bgt _L#44
  588.     movel d1,d0
  589.     asll #1,d0
  590.     movew a0@(96,d0:l),d2
  591.     cmpw a0@(32),d2
  592.     bgt _L#43
  593. _L#44:
  594.     clrl d1
  595.     bra _L#45
  596. _L#47:
  597.     addql #1,d1
  598. _L#45:
  599.     movel _crt_TEH,a0
  600.     movel a0@,a0
  601.     movel d1,d0
  602.     asll #1,d0
  603.     movew a0@(96,d0:l),d2
  604.     cmpw a0@(32),d2
  605.     ble _L#47
  606.     movel _vScroll,sp@-
  607.     movel _linesInFolder,d0
  608.     bge _L#49
  609.     addql #1,d0
  610. _L#49:
  611.     asrl #1,d0
  612.     subw d0,d1
  613.     movew d1,sp@-
  614.     .word  43363  ;  SetCtlValue
  615.     jsr _AdjustText
  616. _L#43:
  617.     movel a6@(-4),a2
  618.     unlk a6
  619.     rts
  620.     .byte $8a
  621.     .ascii "ShowSelect"
  622.     .byte $0
  623.     .word 0
  624.     .data
  625. _LC#2:
  626.     .byte $1
  627.     .byte $14
  628.     .byte $0
  629. _LC#3:
  630.     .byte $9
  631.     .ascii "About ..."
  632.     .byte $0
  633. _LC#4:
  634.     .byte $4
  635.     .ascii "File"
  636.     .byte $0
  637. _LC#5:
  638.     .byte $6
  639.     .ascii "Quit/Q"
  640.     .byte $0
  641. _LC#6:
  642.     .byte $4
  643.     .ascii "Edit"
  644.     .byte $0
  645. _LC#7:
  646.     .ascii "0Undo/Z;-;Cut/X;Copy/C;Paste/V;Clear;Select All/A"
  647.     .byte $0
  648.     .text
  649.     .even
  650.     .globl _SetUpMenus
  651. _SetUpMenus:
  652.     link a6,#0
  653.     moveml d3/a2,sp@-
  654.     subql #4,sp
  655.     movew #128,sp@-
  656.     pea _LC#2
  657.     .word  43313  ;  NewMenu
  658.     movel sp@,d0
  659.     lea _myMenus,a2
  660.     movel d0,a2@
  661.     movel d0,sp@-
  662.     pea _LC#3
  663.     .word  43315  ;  AppendMenu
  664.     movel a2@,sp@-
  665.     movel #1146246738,sp@-
  666.     .word  43341  ;  AddResMenu
  667.     subql #4,sp
  668.     movew #129,sp@-
  669.     pea _LC#4
  670.     .word  43313  ;  NewMenu
  671.     movel sp@,d0
  672.     movel d0,a2@(4)
  673.     movel d0,sp@-
  674.     pea _LC#5
  675.     .word  43315  ;  AppendMenu
  676.     subql #4,sp
  677.     movew #130,sp@-
  678.     pea _LC#6
  679.     .word  43313  ;  NewMenu
  680.     movel sp@,d0
  681.     addqw #8,a2
  682.     movel d0,a2@
  683.     movel d0,sp@-
  684.     pea _LC#7
  685.     .word  43315  ;  AppendMenu
  686.     movel a2@,sp@-
  687.     movew #1,sp@-
  688.     .word  43322  ;  DisableItem
  689.     clrl d3
  690.     addl #12,sp
  691. _L#54:
  692.     lea _myMenus,a0
  693.     movel d3,d0
  694.     asll #2,d0
  695.     movel a0@(d0:l),sp@-
  696.     clrw sp@-
  697.     .word  43317  ;  InsertMenu
  698.     addql #1,d3
  699.     cmpl #2,d3
  700.     ble _L#54
  701.     .word  43319  ;  DrawMenuBar
  702.     moveml a6@(-8),d3/a2
  703.     unlk a6
  704.     rts
  705.     .byte $8a
  706.     .ascii "SetUpMenus"
  707.     .byte $0
  708.     .word 0
  709.     .even
  710.     .globl _DoCommand
  711. _DoCommand:
  712.     link a6,#-256
  713.     moveml d3/a2,sp@-
  714.     movel a6@(8),d3
  715.     subql #2,sp
  716.     movel d3,sp@-
  717.     .word  43115  ;  LoWord
  718.     movew sp@,d0
  719.     movew d0,a2
  720.     addqw #2,sp
  721.     subql #2,sp
  722.     movel d3,sp@-
  723.     .word  43114  ;  HiWord
  724.     movew sp@,d0
  725.     addqw #2,sp
  726.     cmpw #129,d0
  727.     beq _L#59
  728.     bgt _L#73
  729.     cmpw #128,d0
  730.     beq _L#57
  731.     bra _L#56
  732. _L#73:
  733.     cmpw #130,d0
  734.     beq _L#60
  735.     bra _L#56
  736. _L#57:
  737.     lea _myMenus,a0
  738.     tstl a0@
  739.     beq _L#59
  740.     movel a0@,sp@-
  741.     movew a2,sp@-
  742.     movel a6,d3
  743.     addl #-256,d3
  744.     movel d3,sp@-
  745.     .word  43334  ;  GetItem
  746.     subql #2,sp
  747.     movel d3,sp@-
  748.     .word  43446  ;  OpenDeskAcc
  749.     movel _crt_myWindow,sp@-
  750.     .word  43123  ;  SetPort
  751.     addqw #2,sp
  752.     bra _L#56
  753. _L#59:
  754.     .word  43508  ;  ExitToShell
  755.     bra _L#56
  756. _L#60:
  757.     subql #2,sp
  758.     movew a2,d1
  759.     addw #65535,d1
  760.     movew d1,sp@-
  761.     .word  43458  ;  SystemEdit
  762.     moveb sp@,d0
  763.     addqw #2,sp
  764.     tstb d0
  765.     bne _L#56
  766.     cmpl #5,a2
  767.     beq _L#65
  768.     bgt _L#70
  769.     cmpl #3,a2
  770.     beq _L#63
  771.     cmpl #4,a2
  772.     beq _L#64
  773.     bra _L#62
  774. _L#70:
  775.     cmpl #6,a2
  776.     beq _L#66
  777.     cmpl #7,a2
  778.     beq _L#67
  779.     bra _L#62
  780. _L#63:
  781.     subql #4,sp
  782.     .word  43516  ;  ZeroScrap
  783.     movel _crt_TEH,sp@-
  784.     .word  43478  ;  TECut
  785.     addqw #4,sp
  786.     bra _L#62
  787. _L#64:
  788.     subql #4,sp
  789.     .word  43516  ;  ZeroScrap
  790.     movel _crt_TEH,sp@-
  791.     .word  43477  ;  TECopy
  792.     addqw #4,sp
  793.     bra _L#62
  794. _L#65:
  795.     movel _crt_TEH,sp@-
  796.     .word  43483  ;  TEPaste
  797.     bra _L#62
  798. _L#66:
  799.     movel _crt_TEH,sp@-
  800.     .word  43479  ;  TEDelete
  801.     bra _L#62
  802. _L#67:
  803.     clrl sp@-
  804.     movel #32767,sp@-
  805.     movel _crt_TEH,sp@-
  806.     .word  43473  ;  TESetSelect
  807. _L#62:
  808.     jsr _ShowSelect
  809. _L#56:
  810.     clrw sp@-
  811.     .word  43320  ;  HiliteMenu
  812.     moveql #1,d0
  813.     moveml a6@(-264),d3/a2
  814.     unlk a6
  815.     rts
  816.     .byte $89
  817.     .ascii "DoCommand"
  818.     .word 0
  819.     .even
  820.     .globl _MaintainCursor
  821. _MaintainCursor:
  822.     link a6,#-8
  823.     movel d3,sp@-
  824.     tstl _crt_myWindow
  825.     beq _L#75
  826.     subql #4,sp
  827.     .word  43300  ;  FrontWindow
  828.     movel sp@,d0
  829.     movel d0,d3
  830.     addqw #4,sp
  831.     cmpl _crt_myWindow,d3
  832.     bne _L#75
  833.     pea a6@(-4)
  834.     .word  43124  ;  GetPort
  835.     movel d3,sp@-
  836.     .word  43123  ;  SetPort
  837.     pea a6@(-8)
  838.     .word  43378  ;  GetMouse
  839.     subql #2,sp
  840.     movel a6@(-8),sp@-
  841.     movel _crt_TEH,a0
  842.     movel a0@,d1
  843.     addql #8,d1
  844.     movel d1,sp@-
  845.     .word  43181  ;  PtInRect
  846.     moveb sp@,d0
  847.     addqw #2,sp
  848.     beq _L#76
  849.     subql #4,sp
  850.     movew #1,sp@-
  851.     .word  43449  ;  GetCursor
  852.     movel sp@,d0
  853.     movel d0,a0
  854.     movel a0@,sp@-
  855.     .word  43089  ;  SetCursor
  856.     addqw #4,sp
  857.     bra _L#77
  858. _L#76:
  859.     pea _qd+94
  860.     .word  43089  ;  SetCursor
  861. _L#77:
  862.     movel a6@(-4),sp@-
  863.     .word  43123  ;  SetPort
  864. _L#75:
  865.     movel a6@(-12),d3
  866.     unlk a6
  867.     rts
  868.     .byte $8e
  869.     .ascii "MaintainCursor"
  870.     .byte $0
  871.     .word 0
  872.     .even
  873.     .globl _test_inited
  874. _test_inited:
  875.     link a6,#0
  876.     lea _qd+202,a0
  877.     tstl a0@
  878.     bne _L#79
  879.     movel a0,sp@-
  880.     .word  43118  ;  InitGraf
  881.     .word  43262  ;  InitFonts
  882.     .word  43282  ;  InitWindows
  883.     .word  43312  ;  InitMenus
  884.     .word  43468  ;  TEInit
  885.     .word  43088  ;  InitCursor
  886.     jsr _SetUpMenus
  887. _L#79:
  888.     tstl _crt_myWindow
  889.     bne _L#80
  890.     movel a6@(8),sp@-
  891.     jsr _SetUpWindows
  892. _L#80:
  893.     unlk a6
  894.     rts
  895.     .byte $8b
  896.     .ascii "test_inited"
  897.     .word 0
  898.     .data
  899. _LC#8:
  900.     .byte $6
  901.     .ascii "StdErr"
  902.     .byte $0
  903. _LC#9:
  904.     .byte $6
  905.     .ascii "StdOut"
  906.     .byte $0
  907.     .text
  908.     .even
  909.     .globl _cwrite
  910. _cwrite:
  911.     link a6,#0
  912.     moveml d3/d4/d5,sp@-
  913.     movel a6@(12),d5
  914.     movel a6@(16),d4
  915.     cmpl #2,a6@(8)
  916.     bne _L#82
  917.     pea _LC#8
  918.     movel sp@+,d0
  919.     bra _L#83
  920. _L#82:
  921.     pea _LC#9
  922.     movel sp@+,d0
  923. _L#83:
  924.     movel d0,sp@-
  925.     jsr _test_inited
  926.     movel d4,d0
  927.     movel a0,d3
  928.     addqw #4,sp
  929.     bne _L#84
  930.     movel d5,d3
  931.     bra _L#85
  932. _L#84:
  933.     bra _L#86
  934. _L#85:
  935.     movel #32767,sp@-
  936.     movel #32767,sp@-
  937.     movel _crt_TEH,sp@-
  938.     .word  43473  ;  TESetSelect
  939.     movel d3,sp@-
  940.     movel d4,sp@-
  941.     movel _crt_TEH,sp@-
  942.     .word  43486  ;  TEInsert
  943.     cmpl d3,d5
  944.     beq _L#91
  945.     movel d3,a0
  946.     .word  40991  ;  DisposPtr
  947. _L#91:
  948.     movel d4,d0
  949.     moveml a6@(-12),d3/d4/d5
  950.     unlk a6
  951.     rts
  952.     .byte $86
  953.     .ascii "cwrite"
  954.     .byte $0
  955.     .word 0
  956.     .data
  957. _LC#10:
  958.     .byte $5
  959.     .ascii "StdIn"
  960.     .byte $0
  961.     .text
  962.     .even
  963.     .globl _cgetc
  964. _cgetc:
  965.     link a6,#-32
  966.     pea _LC#10
  967.     jsr _test_inited
  968.     addqw #4,sp
  969. _L#93:
  970.     jsr _MaintainCursor
  971.     .word  43444  ;  SystemTask
  972.     movel _crt_TEH,sp@-
  973.     .word  43482  ;  TEIdle
  974.     subql #2,sp
  975.     movew #-1,sp@-
  976.     pea a6@(-16)
  977.     .word  43376  ;  GetNextEvent
  978.     moveb sp@,d0
  979.     tstb d0
  980.     beq _L#96
  981.     movew a6@(-16),d0
  982.     cmpw #5,d0
  983.     beq _L#100
  984.     bgt _L#115
  985.     cmpw #1,d0
  986.     beq _L#98
  987.     cmpw #3,d0
  988.     beq _L#100
  989.     bra _L#93
  990. _L#115:
  991.     cmpw #6,d0
  992.     beq _L#111
  993.     cmpw #8,d0
  994.     beq _L#107
  995.     bra _L#93
  996. _L#98:
  997.     subql #2,sp
  998.     movel a6@(-6),sp@-
  999.     pea a6@(-28)
  1000.     .word  43308  ;  FindWindow
  1001.     movew sp@,d0
  1002.     pea a6@(-16)
  1003.     movel a6@(-28),sp@-
  1004.     extl d0
  1005.     movel d0,sp@-
  1006.     jsr _DoMouseDown
  1007.     addl #14,sp
  1008.     bra _L#93
  1009. _L#100:
  1010.     movel a6@(-14),d0
  1011.     movel d0,d1
  1012.     movew a6@(-2),d0
  1013.     btst #8,d0
  1014.     beq _L#101
  1015.     subql #4,sp
  1016.     clrw d0
  1017.     moveb d1,d0
  1018.     movew d0,sp@-
  1019.     .word  43326  ;  MenuKey
  1020.     movel sp@,d0
  1021.     movel d0,sp@-
  1022.     jsr _DoCommand
  1023.     addqw #8,sp
  1024.     bra _L#93
  1025. _L#101:
  1026.     cmpb #10,d1
  1027.     bne _L#103
  1028.     moveql #13,d0
  1029.     bra _L#92
  1030. _L#103:
  1031.     cmpb #31,d1
  1032.     bhi _L#105
  1033.     clrw d0
  1034.     moveb d1,d0
  1035.     movew d0,sp@-
  1036.     movel _crt_TEH,sp@-
  1037.     .word  43484  ;  TEKey
  1038.     jsr _ShowSelect
  1039.     bra _L#93
  1040. _L#105:
  1041.     clrl d0
  1042.     moveb d1,d0
  1043.     bra _L#92
  1044. _L#107:
  1045.     tstl _crt_myWindow
  1046.     beq _L#93
  1047.     movel a6@(-14),d0
  1048.     cmpl _crt_myWindow,d0
  1049.     bne _L#93
  1050.     movew a6@(-2),d0
  1051.     btst #0,d0
  1052.     beq _L#109
  1053.     movel _crt_TEH,sp@-
  1054.     .word  43480  ;  TEActivate
  1055.     movel _vScroll,sp@-
  1056.     .word  43351  ;  ShowControl
  1057.     bra _L#93
  1058. _L#109:
  1059.     movel _crt_TEH,sp@-
  1060.     .word  43481  ;  TEDeactivate
  1061.     movel _vScroll,sp@-
  1062.     .word  43352  ;  HideControl
  1063.     bra _L#93
  1064. _L#111:
  1065.     tstl _crt_myWindow
  1066.     beq _L#93
  1067.     movel a6@(-14),d0
  1068.     cmpl _crt_myWindow,d0
  1069.     bne _L#93
  1070.     pea a6@(-32)
  1071.     .word  43124  ;  GetPort
  1072.     movel _crt_myWindow,sp@-
  1073.     .word  43123  ;  SetPort
  1074.     movel _crt_myWindow,sp@-
  1075.     .word  43298  ;  BeginUpdate
  1076.     movel _crt_myWindow,d2
  1077.     addl #16,d2
  1078.     movel d2,sp@-
  1079.     .word  43171  ;  EraseRect
  1080.     movel _crt_myWindow,sp@-
  1081.     .word  43369  ;  DrawControls
  1082.     movel _crt_myWindow,sp@-
  1083.     .word  43268  ;  DrawGrowIcon
  1084.     movel _crt_myWindow,d2
  1085.     addl #16,d2
  1086.     movel d2,sp@-
  1087.     movel _crt_TEH,sp@-
  1088.     .word  43475  ;  TEUpdate
  1089.     movel _crt_myWindow,sp@-
  1090.     .word  43299  ;  EndUpdate
  1091.     movel a6@(-32),sp@-
  1092.     .word  43123  ;  SetPort
  1093.     bra _L#93
  1094.     unlk a6
  1095.     rts
  1096.     .byte $85
  1097.     .ascii "cgetc"
  1098.     .word 0
  1099.     .lcomm _vScroll,4
  1100.     .lcomm _myMenus,12
  1101.     .lcomm _linesInFolder,4
  1102.     .lcomm _crt_wRecord,156
  1103.